import axios from 'axios' // 导入axios
import router from '@/router'
import { Message } from 'element-ui'
import { removeStorage } from '@/utils'
const $axios = axios.create({
  // baseURL: 'http://127.0.0.1:8888/api/private/v1/', // 本地的
  // // baseURL: 'http://122.51.249.55:5000/api/private/v1',  // 在线的
  // baseURL: process.env.NODE_ENV === 'production' ? 'http://122.51.249.55:5000/api/private/v1' : 'http://127.0.0.1:8888/api/private/v1/',
  baseURL: process.env.VUE_APP_APIURL, // 读取不同环境变量的信息
  timeout: 5000
})
// 配置请求拦截器
$axios.interceptors.request.use(config => {
  let user = localStorage.getItem('HEIMASHOP_USER')
  if (user) { // 登录了，就携带
    user = JSON.parse(user)
    config.headers.Authorization = user.token
  }
  return config
}, error => {
  return Promise.reject(error)
})
// 配置响应拦截器
$axios.interceptors.response.use(response => {
  if (response.data.meta.status === 400) {
    Message.error('登录失效，请重新登录')
    // localStorage.removeItem('HEIMASHOP_USER')
    removeStorage('HEIMASHOP_USER')
    // 退出跳转到登录页去   router.currentRoute.path 表示当前路由地址
    router.push('/login?url=' + router.currentRoute.path)
  } else {
    return response
  }
}, error => {
  return Promise.reject(error)
})

// 暴露出去
export default $axios
